.TH CPPMAN 1 "MAY 2010" Linux "User Manuals"
.SH NAME
cppman - C++ manual page viewer / fetcher
.SH SYNOPSIS
.B cppman [
.I OPTIONS...
.B ] PAGE...
.SH DESCRIPTION
cppman generates C++ manual pages from cplusplus.com and provide a man\-like interface to view man pages.
.sp
By default, cppman fetches man pages on-the-fly, by running the command 'cppman \-c', all available manpages are cached, making offline browsing possible. This is also required if you want to use the system 'man' command.
.SS Browsing man pages
cppman uses Vi Improved as a pager.
.br
Press 'q' to leave pager.
Press 'K' on an entry like 'vector::insert(3)' links you to the manual page of vector::insert, like a hyperlink.
.SS man compatibility
cppman automatically adds '$XDG_CACHE_HOME/cppman/man' to '~/.manpath', so the cached man pages can also be viewed with 'man' command. Note that to view uncached man pages, you still need to run 'cppman'.
.SH OPTIONS
.IP "\-s SOURCE, \-\-source=SOURCE"
Select source, either 'cppreference.com' or 'cplusplus.com'. Default is 'cppreference.com'.
.IP "\-c, \-\-cache\-all"
cache all available man pages from cplusplus.com to enable offline browsing
.IP "\-C, \-\-clear\-cache"
clear all cached files
.IP "\-f KEYWORD, \-\-find\-page=KEYWORD"
find man page
.IP "\-o, \-\-force\-update"
force cppman to update existing cache when '\-\-cache\-all' or browsing man pages that were already cached
.IP "\-m MANDB, \-\-use\-mandb=MANDB"
Accepts 'true' or 'false'. If true, cppman adds manpage path to mandb so that you can view C++ manpages with `man' command. The default value is 'false'.
.IP "\-p PAGER, \-\-pager=PAGER"
Select pager to use, accepts 'vim', 'nvim' or 'less'. The default value is 'vim'.
If 'nvim' is selected, but not available, 'vim' is used as a fallback and vice versa. If either is selected, but neither is available, 'less' is used as a fallback.
.IP "\-r, \-\-rebuild\-index"
rebuild index database from cplusplus.com
.IP "\-v, \-\-version"
show version information
.IP "\-h, \-\-help"
show this help message and exit
.SH NOTE
All contents should be cached by the user, cppman does not contain any pre\[hy]cached contents.
.sp
Do not distribute the cached man pages without the permission of cplusplus.com.
.SH BUGS
Although I spend a lot of time checking the format, there are still pages that won't display correctly.
.br
Feel free to report bugs at:
.sp
https://github.com/aitjcize/cppman/issues or
.br
mailto:aitjcize@gmail.com.
.sp
Please include the page name in the bug report.
.SH AUTHOR
Wei\[hy]Ning Huang (AZ) <aitjcize@gmail.com>
